import FlyIO from 'flyio/dist/npm/wx'
import store from '../store/index'
// 创建新的 FlyIO 实例
const http = new FlyIO()

// 设置超时(服务器性能偏差)
http.config.timeout = 30000;

// 设置请求基地址
http.config.baseURL = 'https://api-hmugo-web.itheima.net/api/public/v1'

// 请求拦截器
http.interceptors.request.use((request) => {
    uni.showLoading({
        title: "加载中...",
        mask: true
    })
    //支付相关的接口需要发送请求时携带token,
    //这些接口的请求地址统一有/my,可依据这个来判断是否是请求相关的接口再携带token
    // console.log("判断路径my",request);
    //includes 判断是否包含 返回布尔类型
    //indexOf 检索字符串是否存在,存在返回下标,否者是-1
    //startsWith 判断是否以XXX开头,返回布尔值
    if(request.url.startsWith('/my')){
        request.headers.Authorization=store.state.user.token
    }
    return request
})

// 响应拦截器
http.interceptors.response.use((response) => {
    // 关闭加载框
    uni.hideLoading()
  
    // 只取返回的数据字段
    return response.data
}, (err) => {
    uni.hideLoading()
    return Promise.reject(err)
})

// 导出
export default http